package com.esteel.settlement.entity;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;
import javax.xml.bind.annotation.XmlElement;

import org.springframework.format.annotation.DateTimeFormat;


/**
 * The persistent class for the TB_SETT_FUND database table.
 * 
 */
@Entity
@Table(name="TB_SETT_FUND")
@NamedQuery(name="TbSettFund.findAll", query="SELECT t FROM TbSettFund t")
public class TbSettFund implements Serializable {
	private static final long serialVersionUID = 1L;

	@EmbeddedId
	private TbSettFundPK id;

	@Column(name="CUST_FLAG")
	private int custFlag;

	@Column(name="CUST_STATUS")
	private int custStatus;

	@Column(name="CUST_TYPE")
	private int custType;

	@Column(name="INIT_TOTAL_AMOUNT")
	private double initTotalAmount;

	@Column(name="INIT_TOTAL_BALANCE")
	private double initTotalBalance;

	@Column(name="INIT_TOTAL_FREEZE_AMOUNT")
	private double initTotalFreezeAmount;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="SETT_DATE")
	private Date settDate;

	@Column(name="SUP_ACCT_ID")
	private String supAcctId;

	@Column(name="TOTAL_AMOUNT")
	private double totalAmount;

	@Column(name="TOTAL_BALANCE")
	private double totalBalance;

	@Column(name="TOTAL_FREEZE_AMOUNT")
	private double totalFreezeAmount;

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name="TRAN_DATE")
	private Date tranDate;

	// 开始日期
	@XmlElement(name = "BeginDate")
	@DateTimeFormat(pattern = "yyyyMMdd")
	@Transient
	private Date beginDate;
	
	// 结束日期
	@Transient
	@XmlElement(name = "EndDate")
	@DateTimeFormat(pattern = "yyyyMMdd")
	private Date endDate;
	
	public TbSettFund() {
	}

	public TbSettFundPK getId() {
		return id;
	}

	public int getCustFlag() {
		return custFlag;
	}

	public int getCustStatus() {
		return custStatus;
	}

	public int getCustType() {
		return custType;
	}

	public double getInitTotalAmount() {
		return initTotalAmount;
	}

	public double getInitTotalBalance() {
		return initTotalBalance;
	}

	public double getInitTotalFreezeAmount() {
		return initTotalFreezeAmount;
	}

	public Date getSettDate() {
		return settDate;
	}

	public String getSupAcctId() {
		return supAcctId;
	}

	public double getTotalAmount() {
		return totalAmount;
	}

	public double getTotalBalance() {
		return totalBalance;
	}

	public double getTotalFreezeAmount() {
		return totalFreezeAmount;
	}

	public Date getTranDate() {
		return tranDate;
	}

	public void setId(TbSettFundPK id) {
		this.id = id;
	}

	public void setCustFlag(int custFlag) {
		this.custFlag = custFlag;
	}

	public void setCustStatus(int custStatus) {
		this.custStatus = custStatus;
	}

	public void setCustType(int custType) {
		this.custType = custType;
	}

	public void setInitTotalAmount(double initTotalAmount) {
		this.initTotalAmount = initTotalAmount;
	}

	public void setInitTotalBalance(double initTotalBalance) {
		this.initTotalBalance = initTotalBalance;
	}

	public void setInitTotalFreezeAmount(double initTotalFreezeAmount) {
		this.initTotalFreezeAmount = initTotalFreezeAmount;
	}

	public void setSettDate(Date settDate) {
		this.settDate = settDate;
	}

	public void setSupAcctId(String supAcctId) {
		this.supAcctId = supAcctId;
	}

	public void setTotalAmount(double totalAmount) {
		this.totalAmount = totalAmount;
	}

	public void setTotalBalance(double totalBalance) {
		this.totalBalance = totalBalance;
	}

	public void setTotalFreezeAmount(double totalFreezeAmount) {
		this.totalFreezeAmount = totalFreezeAmount;
	}

	public void setTranDate(Date tranDate) {
		this.tranDate = tranDate;
	}

	public Date getBeginDate() {
		return beginDate;
	}

	public void setBeginDate(Date beginDate) {
		this.beginDate = beginDate;
	}

	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

	

}